Micron Document
____ _ _ _ _
| _ \ ___ | |_ (_) _ __ ___ __| | (_) __ _
| |_) | / _ \ | __| | | | '_ \ / _ \ / _| | | | / _ |
| _ < | __/ | |_ | | | |_) | | __/ | (_| | | | | (_| |
|_| \_\ \___| \__| |_| | .__/ \___| \__,_| |_| \__,_|
|_|


The NomadNet German Wikipedia | Archives | Info
- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b

πŸ” Search

Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―

Bencode
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
Bencode bzw. als Verb bencoding ist ein Datenaustauschformat, welches fΓΌr das Filesharing-Protokoll BitTorrent entwickelt wurde.cite-ref-1[1] Es verwendet eine effiziente, ASCII-basierte Kodierung, kann aber BinΓ€rdaten enthalten. Insofern ist Bencode anders als Formate wie XML, JSON oder YAML nicht grundsΓ€tzlich menschenlesbar. Das Format unterstΓΌtzt vier Datentypen: Ganze Zahlen, Zeichenketten variabler LΓ€nge, Listen und assoziative Listen.cite-ref-2[2]

Bencode wird unter anderem in .torrent-Dateien (offiziell Metainfo-Dateien) verwendet.

Bencode ist ein recht einfaches Format mit einer strikten Definition. FΓΌr jeden Datensatz gibt es nur eine gΓΌltige Darstellung in Bencode. Dies vereinfacht das Parsing und die Implementierung. Allerdings wird zum Bearbeiten ein spezialisierter Editor benΓΆtigt, da Texteditoren wegen enthaltener BinΓ€rdaten im Allgemeinen nicht zur Bearbeitung geeignet sind.

Contents

β€’ Format
β€’ Zahlen
β€’ Zeichenketten
β€’ Listen
β€’ Weblinks

──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

Format

Zahlen

Zahlen werden als i<zahl>e codiert. Dabei ist <zahl> die dezimale ASCII-Darstellung der Zahl. Negative Zahlen werden wie ΓΌblich mit einem vorangestellten Bindestrich (ASCII-Zeichen 45) ausgegeben. Bencode unterstΓΌtzt nur ganze Zahlen.

| Zahl | Bencode |
|---|---|
| βˆ’234 | i-234e |
| 0 | i0e |
| 29410 | i29410e |

Zeichenketten

Zeichenketten werden als <lΓ€nge>:<inhalt> ausgegeben. Dabei ist <lΓ€nge> die LΓ€nge, zur Basis 10, und <inhalt> die Zeichenkette an sich. Leere Zeichenketten werden mit der LΓ€nge Null ausgegeben. Zeichenketten haben keinen definierten Zeichensatz und kΓΆnnen auch binΓ€re Daten enthalten. In Metainfo-Dateien sind alle Texte UTF-8-kodiert.

| Zeichenkette | Bencode |
|---|---|
| (leere Zeichenkette) | 0: |
| Hallo Welt | 10:Hallo Welt |

Listen

Listen werden als l<inhalt>e ausgegeben. <inhalt> besteht aus den aneinandergereihten, bencodeten Elementen der Liste. Eine Liste kann eine Mischung unterschiedlicher Datentypen beinhalten (z. B. sowohl Zahlen als auch Zeichenketten). Eine leere Liste hat die Darstellung le.

| Liste | Bencode |
|---|---|
| [] | le |
| [595] | li595ee |
| [Hallo] | l5:Halloe |
| [-343, Hallo, 555, [], [5]] | li-343e5:Halloi555eleli5eee |

Assoziative Listen

Assoziative Listen (dictionaries) werden, Γ€hnlich wie normale Listen, in der Form d<inhalt>e ausgegeben. Dabei besteht der Inhalt aus aneinandergereihten SchlΓΌssel-Wert-Paaren. Die Paare mΓΌssen in lexikographischer Ordnung aufgefΓΌhrt sein, womit die Darstellung jeder assoziativen Liste eindeutig ist. Eine leere assoziative Liste wird als de ausgegeben.

| Assoziative Liste | Bencode |
|---|---|
| {} | de |
| {Name => Thomas, Alter => 34} | d5:Alteri34e4:Name6:Thomase |

Weblinks

β€’ Spezifikation von Bencode als Teil der BitTorrent-Spezifikation (Abschnitt β€žbencodingβ€œ)
β€’ Torrent File Editor, ein Open-Source-Bearbeitungsprogramm fΓΌr Bencode-Daten

Einzelnachweise

cite-note-11. ↑ Bram Cohen: The BitTorrent Protocol Specification. In: BitTorrent.org. Abgerufen am 13. Juni 2025.
cite-note-22. ↑ BitTorrentSpecification - TheoryOrg. Archiviert vom Original am 26. September 2022; abgerufen am 13. Juni 2025 (englisch).